package cn.goktech.sports.modules.importDataone.service;

import cn.goktech.sports.common.entity.R;
import cn.goktech.sports.modules.importDataone.entity.*;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

public interface UserService {
    UserEntity selectUserByName(String name);

    boolean insertUserEntity(UserEntity user);

    boolean updateUserEntity(UserEntity user);

    UserEntity selectUserByNameAndPwd(String name, String password);

    List<OriginalPlaceEntity> getAreaList();

    List<BaseCountry> getLevelCountryList();

    List<BaseCountry> getCountryList();

    List<Depot> getDepotList(Long countryId);

    List<NationalWeightEntity> getNationAreaList(String national_area_name);

    //查询头程仓库
    List<HeadProcessEntity> getHeadProcess(String name);

    //头程id
    List<ChargingSectionEntity> getChargingSectionList(Long header_id);

    //查询燃油费
    Map<String, Object> getFuel(Long fuel_id);

    //头程附加费
    List<Map<String,Object>> getAttachCost(Long header_id);
    //头程海运
    List<HeaderSeaEntity> getHeaderSea(String name);

    //海运区间
    List<ShippingCharging> getHeaderSeaCharging(Long sea_id);

    //头程铁运
    List<HeaderRailwayEntity> getHeaderRailway(String name);

    //查询铁运区间
    List<HeaderRailwaySectionEntity> getHeaderRailwaySection(Long railway_id);


    List<HeadWayEntity> getHeaderLandWay(String name, int weight);

    R getGoodsNameNum(String goodsName, Long depotId, Long countryId );
    //查询DHL和FedEx大于某个值后的计费规则
    List<Map<String,Object>> getThroughSection(Long country_partition_id,Long product_type_id);
    //查询DHL不大于某个前的计费规则
    List<Map<String,Object>> getDhlCharging(Long country_partition_id,Long product_type_id);
    //查询FedEx不大于某个值得计费规则
    Map<String,Object> getFedExCharging(Long partition_id,Long product_type_id,BigDecimal weight);
}
